package cn.iocoder.yudao.module.crossborder.order.controller.admin.orderreturnitem.vo;

import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 跨境电商退换货明细分页 Request VO")
@Data
public class OrderReturnItemPageReqVO extends PageParam {

    @Schema(description = "退换货编号", example = "26411")
    private Long returnId;

    @Schema(description = "退换货单号")
    private String returnNo;

    @Schema(description = "订单项编号", example = "17033")
    private Long orderItemId;

    @Schema(description = "SKU编号", example = "26312")
    private Long skuId;

    @Schema(description = "SKU编码")
    private String skuCode;

    @Schema(description = "商品名称", example = "张三")
    private String productName;

    @Schema(description = "退换货数量")
    private BigDecimal returnQuantity;

    @Schema(description = "单价", example = "11671")
    private BigDecimal unitPrice;

    @Schema(description = "总金额")
    private BigDecimal totalAmount;

    @Schema(description = "退款金额")
    private BigDecimal refundAmount;

    @Schema(description = "货币代码")
    private String currencyCode;

    @Schema(description = "退换货原因", example = "不对")
    private String returnReason;

    @Schema(description = "质量问题")
    private String qualityIssue;

    @Schema(description = "已收货数量")
    private BigDecimal receivedQuantity;

    @Schema(description = "质检结果")
    private String qualityCheckResult;

    @Schema(description = "重新入库数量")
    private BigDecimal restockQuantity;

    @Schema(description = "报废数量")
    private BigDecimal scrapQuantity;

    @Schema(description = "批次号")
    private String batchNo;

    @Schema(description = "序列号列表，逗号分隔")
    private String serialNos;

    @Schema(description = "备注", example = "你猜")
    private String remark;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

}